import mitt from 'mitt'

interface Events {
  // 自定义事件名称
  event: () => void
  // 任意传递的参数
  [parmas: symbol]: any
  [params: string]: any
}

const emitter = mitt<Events>()


// 中间这些都是模拟场景的：
// 绑定事件
/*emitter.on('test1',()=>{
  console.log('test1')
})
emitter.on('test2',()=>{
  console.log('test2')
})

setInterval(()=>{
  // 触发
  emitter.emit('test1')
  emitter.emit('test2')
},1000)

setTimeout(()=>{
  // 解绑
  emitter.off('test1')

  // 解绑所有
  emitter.all.clear()
},5000)*/


export default  emitter
